import http from "@/utils/ajax/http";
import { extend } from "@/utils/extend";

const api = {
    code: {
        OK: 0, // 成功状态码
    },
    user: {
        login: "authLogin.do?ac=login", // 用户登录接口
        tokenLogin: "tokenLogin.do", // 使用令牌登录接口
        logout: "logout.do", // 用户退出接口
    },
    checkUpdate: "sh.do", // 检查更新接口
    editorPassword: "editPassword", // 编辑密码接口
    checkField: "checkno.do", // 检查字段接口
    dbQuery: "/db/query", // 数据库查询接口
    dbSelect: "/db/select", // 数据库选择接口

    captch() {
        var url = "captcha.do?rd=" + Math.floor(Math.random() * 100000);
        return new Promise((resolve, reject) => {
            http.get(url).then((res) => {
                var url = res.data;
                resolve(url);
            }, reject);
        });
    },

    search: {
        select: "selectUpdateSearch.do", // 搜索选择接口
        table: "tableAjax.do?a=table", // 表格搜索接口
        selectView: "selectView.do", // 查看选择接口
        all: "selectAll.do", // 全部搜索接口
    },

    attachment: {
        uploadUrl: "upload_re.do", // 附件上传URL
        upload(file) { // 附件上传方法
            return new Promise((resolve, reject) => {
                var formdata = new FormData();
                formdata.append("fujian", file, file.name || "tmp.png");
                http.post(api.attachment.uploadUrl, formdata)
                    .then((res) => {
                        if (res.code == api.code.OK) {
                            resolve(res.data);
                        } else {
                            reject(res.msg);
                        }
                    })
                    .catch((err) => {
                        reject(err.message);
                    });
            });
        },
    },

    admins: {
        list: "admins_list.do", // 管理员列表接口
        insert: "adminsinsert.do", // 插入管理员接口
        update: "adminsupdate.do", // 更新管理员接口
        delete: "admins_delete.do", // 删除管理员接口
        detail: "admins_detail.do", // 管理员详情接口
        create: "admins_add.do", // 创建管理员接口
        edit: "admins_updt.do", // 编辑管理员接口
    },

    yonghu: {
        list: "yonghu_list.do", // 用户列表接口
        insert: "yonghuinsert.do", // 插入用户接口
        update: "yonghuupdate.do", // 更新用户接口
        delete: "yonghu_delete.do", // 删除用户接口
        detail: "yonghu_detail.do", // 用户详情接口
        create: "yonghu_add.do", // 创建用户接口
        edit: "yonghu_updt.do", // 编辑用户接口
    },

    youqinglianjie: {
        list: "youqinglianjie_list.do", // 友情链接列表接口
        insert: "youqinglianjieinsert.do", // 插入友情链接接口
        update: "youqinglianjieupdate.do", // 更新友情链接接口
        delete: "youqinglianjie_delete.do", // 删除友情链接接口
        detail: "youqinglianjie_detail.do", // 友情链接详情接口
        create: "youqinglianjie_add.do", // 创建友情链接接口
        edit: "youqinglianjie_updt.do", // 编辑友情链接接口
    },

    liuyanban: {
        list: "liuyanban_list.do", // 留言板列表接口
        insert: "liuyanbaninsert.do", // 插入留言板接口
        update: "liuyanbanupdate.do", // 更新留言板接口
        delete: "liuyanban_delete.do", // 删除留言板接口
        detail: "liuyanban_detail.do", // 留言板详情接口
        create: "liuyanban_add.do", // 创建留言板接口
        edit: "liuyanban_updt.do", // 编辑留言板接口
        listliuyanren: "liuyanban_list_liuyanren.do", //这段代码是一个包含多个接口的API对象。这些接口用于与后端服务器进行通信，执行不同的操作，例如用户登录、附件上传、搜索数据等。

// 以下是每个接口的功能说明：

// - `code`: 定义了一些状态码，其中`OK`表示成功状态码。
// - `user`: 包含用户相关的接口，如登录、令牌登录和退出。
// - `checkUpdate`: 检查更新接口。
// - `editorPassword`: 编辑密码接口。
// - `checkField`: 检查字段接口。
// - `dbQuery`: 数据库查询接口。
// - `dbSelect`: 数据库选择接口。
// - `captch()`: 生成验证码的方法。返回一个Promise对象，在异步操作完成后解析验证码URL。
// - `search`: 包含多个搜索相关的接口，如选择接口、表格搜索接口等。
// - `attachment`: 包含附件相关的接口，如附件上传URL和上传方法。
// - `admins`: 包含管理员相关的接口，如管理员列表、插入、更新、删除等。
// - `yonghu`: 包含用户相关的接口，如用户列表、插入、更新、删除等。
// - `youqinglianjie`: 包含友情链接相关的接口，如友情链接列表、插入、更新、删除等。
// - `liuyanban`: 包含留言板相关的接口，如留言板列表、插入、更新、删除等。

// 你可以使用这些接口与后端服务器进行通信，执行相应的操作。
    },
    lunbotu: {
        list: "lunbotu_list.do",
        insert: "lunbotuinsert.do",
        update: "lunbotuupdate.do",
        delete: "lunbotu_delete.do",
        detail: "lunbotu_detail.do",
        create: "lunbotu_add.do",
        edit: "lunbotu_updt.do",
    },
    pinglun: {
        list: "pinglun_list.do",
        insert: "pingluninsert.do",
        update: "pinglunupdate.do",
        delete: "pinglun_delete.do",
        detail: "pinglun_detail.do",
        create: "pinglun_add.do",
        edit: "pinglun_updt.do",
        listpinglunren: "pinglun_list_pinglunren.do",
    },
    pinglunhuifu: {
        list: "pinglunhuifu_list.do",
        insert: "pinglunhuifuinsert.do",
        update: "pinglunhuifuupdate.do",
        delete: "pinglunhuifu_delete.do",
        detail: "pinglunhuifu_detail.do",
        create: "pinglunhuifu_add.do",
        edit: "pinglunhuifu_updt.do",
        listpinglunren: "pinglunhuifu_list_pinglunren.do",
        listhuifuren: "pinglunhuifu_list_huifuren.do",
    },
    shoucang: {
        list: "shoucang_list.do",
        insert: "shoucanginsert.do",
        update: "shoucangupdate.do",
        delete: "shoucang_delete.do",
        detail: "shoucang_detail.do",
        create: "shoucang_add.do",
        edit: "shoucang_updt.do",
        listusername: "shoucang_list_username.do",
        batch: "shoucang_batch.do",
    },
    xuexiziliao: {
        list: "xuexiziliao_list.do",
        insert: "xuexiziliaoinsert.do",
        update: "xuexiziliaoupdate.do",
        delete: "xuexiziliao_delete.do",
        detail: "xuexiziliao_detail.do",
        create: "xuexiziliao_add.do",
        edit: "xuexiziliao_updt.do",
        listfaburen: "xuexiziliao_list_faburen.do",
        weblist: "xuexiziliaolist.do",
        webdetail: "xuexiziliaodetail.do",
    },
    ziliaoleixing: {
        list: "ziliaoleixing_list.do",
        insert: "ziliaoleixinginsert.do",
        update: "ziliaoleixingupdate.do",
        delete: "ziliaoleixing_delete.do",
        detail: "ziliaoleixing_detail.do",
        create: "ziliaoleixing_add.do",
        edit: "ziliaoleixing_updt.do",
    },
    gonggao: {
        list: "gonggao_list.do",
        insert: "gonggaoinsert.do",
        update: "gonggaoupdate.do",
        delete: "gonggao_delete.do",
        detail: "gonggao_detail.do",
        create: "gonggao_add.do",
        edit: "gonggao_updt.do",
        listfaburen: "gonggao_list_faburen.do",
        weblist: "gonggaolist.do",
        webdetail: "gonggaodetail.do",
    },
};

export default api;
